package com.meatball.core.config

import java.util.concurrent.ThreadFactory
import java.util.concurrent.atomic.AtomicInteger

/**
 * TODO 定义线程池工厂
 *
 * @author 张翔宇
 * @since 2024年5月10日
 */
class CustomThreadFactory : ThreadFactory {
    /**
     * 线程编号
     */
    private val threadNumber = AtomicInteger(1)

    /**
     * TODO 重写 newThread 方法，设置线程的初始化信息
     *
     * @param r
     * @return
     */
    override fun newThread(r: Runnable): Thread {
        // 创建新的线程，并设置线程的名称
        return Thread(r, "CustomThread-" + threadNumber.getAndIncrement())
    }
}